$(function() {
    buttenControl();
    $('#tb_ads').bootstrapTable({
        method: 'GET',                      //请求方式（*）
        // url: 'list.json',         //请求后台的URL（*）
        url:projectPath + "/base/vendor/infos/list",
        contentType: 'application/x-www-form-urlencoded',
        toolbar: '#toolbar',                //工具按钮用哪个容器
        striped: true,                      //是否显示行间隔色
        cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
        pagination: true,                   //是否显示分页（*）
        sortable: false,                     //是否启用排序
        sortOrder: "asc",                   //排序方式
        search:false,
        queryParams: queryParams,//传递参数（*）
        sidePagination: "server",           //分页方式：client客户端分页，server服务端分页（*）
        pageNumber: 1,                       //初始化加载第一页，默认第一页
        pageSize: 10,                       //每页的记录行数（*）
        pageList: [10,20,50],        //可供选择的每页的行数（*）
        strictSearch: true,
        clickToSelect: true,                //是否启用点击选中行
        uniqueId: "id",
        showColumns: true,                  //是否显示所有的列
        showRefresh: true,                  //显示刷新按钮
        showToggle: true,
        minimumCountColumns: 2,             //最少允许的列数
        singleSelect:true,
        paginationPreText: "上一页",
        paginationNextText: "下一页",
        columns: [
            {field: 'check', checkbox: true},
            {field: '', title: '序号', align: 'center', formatter: function (value, row, index) {
                var pageSize=$('#tb_ads').bootstrapTable('getOptions').pageSize;//通过表的#id 可以得到每页多少条
                var pageNumber=$('#tb_ads').bootstrapTable('getOptions').pageNumber;//通过表的#id 可以得到当前第几页
                return pageSize * (pageNumber - 1) + index + 1;    //返回每条的序号： 每页条数 * （当前页 - 1 ）+ 序号
            }},
            {field: 'uuid', title: '主键', align: 'center', visible:false},
            {field: 'name', title: '厂商名称', align: 'center',formatter: function (value, row, index) {
                return '<div style="white-space: nowrap;"><a href="javascript:;" onclick="vender_detail(\''+ row.uuid + '\')">' + value + '</a></div>';
            }},
            {field: 'tel', title: '联系电话', align: 'center',formatter:function(value, row, index){
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }},
            {field: 'vendorno', title: '厂家编号',align: 'center',formatter:function(value, row, index){
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }},
            {field: 'createdat', title: '创建时间',  align: 'center',formatter:function (value, row, index) {
                if(value == "" || value == null){
                    value="";
                }else{
                    value = getLocalTime(value);
                }
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }},
            {field: 'updatedat', title: '修改时间', align: 'center',formatter:function (value, row, index) {
                if(value == "" || value == null){
                    value="";
                }else{
                    value = getLocalTime(value);
                }
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }}
        ],
        responseHandler: function (obj) {
            return {
                total:obj.data.total,
                rows:obj.data.list
            }
        }
    });
    $('#eqTabDetail').bootstrapTable({
        method: 'POST',                      //请求方式（*）
        // url:projectPath + "/base/equipment/infos/qryEquipmentInfoByvendorUuid",
        contentType: 'application/x-www-form-urlencoded',
        //toolbar: '#toolbar',                //工具按钮用哪个容器
        striped: true,                      //是否显示行间隔色
        cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
        pagination: true,                   //是否显示分页（*）
        sortable: false,                     //是否启用排序
        sortOrder: "asc",                   //排序方式
        search:false,
        //queryParams: {vendorUuid:$("#uuid").val()},//传递参数（*）
        sidePagination: "client",           //分页方式：client客户端分页，server服务端分页（*）
        pageNumber: 1,                       //初始化加载第一页，默认第一页
        pageSize: 10,                       //每页的记录行数（*）
        pageList: [10,20,50],        //可供选择的每页的行数（*）
        strictSearch: true,
        clickToSelect: true,                //是否启用点击选中行
        uniqueId: "id",
        //showColumns: true,                  //是否显示所有的列
        //showRefresh: true,                  //显示刷新按钮
        //showToggle: true,
        minimumCountColumns:2,             //最少允许的列数
        singleSelect:true,
        paginationPreText: "上一页",
        paginationNextText: "下一页",
        columns: [
            {field: 'check', checkbox: true},
            {field: '', title: '序号', align: 'center', formatter: function (value, row, index) {
                return (index +1);
            }},
            {field: 'uuid', title: '主键', align: 'center', visible:false},
            {field: 'equipmentname', title: '设备型号',align: 'center',formatter:function (value, row, index) {
                return '<div style="white-space: nowrap;">'+ value +'</div>';
            }},
            {field: 'type', title: '设备类型', align: 'center',formatter:function (value, row, index) {
                var type = '';
                if(value == '1'){
                    type = "直流充电桩";
                }else if(value == '2'){
                    type ="交流充电桩";
                }else if(value == '3'){
                    type ="通用充电桩";
                }else{
                    type ="其他";
                }
                return '<div style="white-space: nowrap;">' + type + '</div>';
            }},
            {field: 'power', title: '额定功率(KW)', align: 'center',formatter:function (value, row, index) {
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }},
            {field: 'minoutvolt', title: '最小输出电压(V)', align: 'center',formatter:function (value, row, index) {
                if(value == "" || value == null){
                    value = "";
                };
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }},
            {field: 'maxoutvolt', title: '最大输出电压(V)', align: 'center',formatter:function (value, row, index) {
                if(value == "" || value == null){
                    value = "";
                };
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }},
            {field: 'minoutcurrent', title: '最小输出电流(A)',align: 'center',formatter:function (value, row, index) {
                if(value == "" || value == null){
                    value = "";
                };
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }},
            {field: 'maxoutcurrent', title: '最大输出电流(A)',align: 'center',formatter:function (value, row, index) {
                if(value == "" || value == null){
                    value = "";
                };
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }},
            {field: 'chargestandard', title: '充电标准',align: 'center',formatter:function (value, row, index) {
                var type = '';
                if(value == "01"){
                    type = "国标";
                }else if(value == "02"){
                    type = "美标";
                }else if(value == "03"){
                    type = "欧标";
                }else if(value == "04"){
                    type = "国标2015";
                }else{
                    type = "其他";
                };
                return "<div style='white-space: nowrap;'>" + type + "</div>";
            }},
            {field: 'createdat', title: '创建时间',align: 'center',formatter:function (value, row, index) {
                if(value == "" || value == null){
                    value="";
                }else{
                    value = getLocalTime(value);
                }
                return "<div style='width:150px;min-width: 150px;max-width: 150px;margin: auto;'>" + value + "</div>";
            }},
            {field: 'updatedat', title: '修改时间',align: 'center',formatter:function (value, row, index) {
                if(value == "" || value == null){
                    value="";
                }else{
                    value = getLocalTime(value);
                }
                return "<div style='white-space: nowrap;'>" + value + "</div>";
            }}
        ],
        responseHandler: function (obj) {
            console.log(obj)
            return obj.data;
        }
    });
    // 查询
    $("#btnQuery").click(function(){
        $('#tb_ads').bootstrapTable('refresh', {url:projectPath + "/base/vendor/infos/list",pageNumber:1});
    });
    // 置空
    $("#btnEmpty").click(function () {
        $("#name").val("");
        $("#tel").val("");
        $("#vendorNo").val("");
        $("#startTime").val("");
        $("#endTime").val("");
    });
    formValidator();
});

// 查询参数
function queryParams() {
    var filterinfo = {};
    if($("#name").val() != ""){
        filterinfo.name = $("#name").val();
    };
    if($("#tels").val() != ""){
        filterinfo.tel = $("#tels").val();
    };
    if($("#tel").val() != ""){
        filterinfo.tel = $("#tel").val();
    };
    if($("#vendorNo").val() != ""){
        filterinfo.vendorNo = $("#vendornos").val();
    };
    if($("#createStartDate").val() != ""){
        filterinfo.createStartDate = $("#createStartDate").val();
    };
    if($("#createEndDate").val() != ""){
        filterinfo.createEndDate = $("#createEndDate").val();
    };
    if($("#updateStartDate").val() != ""){
        filterinfo.updateStartDate = $("#updateStartDate").val();
    };
    if($("#updateEndDate").val() != ""){
        filterinfo.updateEndDate = $("#updateEndDate").val();
    };
    filterinfo.offset = (this.pageNumber-1)*this.pageSize;
    filterinfo.limit = this.pageSize;
    return filterinfo;
};

// 删除
$("#btnDelete").on("click",function(){
    var ids = getSelectedDeleteParams();
    if (ids != '' && ids != null) {
        layerAlert.confirmMessage("此操作会删除该厂商下的设备信息，确定删除?",projectPath + "/base/vendor/infos/del?uuid="+ids, function(data){
            if(data.code == "0"){
                layerAlert.successMessage("操作成功","");
            }else{
                layerAlert.errorMessage("出错了");
            };
        });
    }else{
        layerAlert.errorMessage("您的选择为空");
    }
});


// 厂家名称后台验证是否占用
$("#vendorName").on("change",function(){
    verifyvendorName();

});
function verifyvendorName(){
    $.ajax({
        type: "POST",
        url:projectPath+'/base/vendor/infos/qryVendorInfoByNameOrVendorNo',
        data:{name:$("#vendorName").val()},
        dataType:"json",
        success:function(data){
            debugger;
            result = data.data;
            console.log(data.data)
            if(result.nameStatus != 0) {
                layerAlert.warnMessage("该名称已占用,请重新填写");
                $("#vendorName").val("");
            };
        },
        error:function(){
            layerAlert.errorMessage("数据错误");
        }
    })
}




// 新增
$("#btnAdd").on("click",function () {
    formValidator();
    $(".addMenu select,input").prop("disabled",false);
    $("#equipmentDetail").hide();
    layer.open({
        type: 1,
        title: "新增厂商",
        shadeClose: true,
        shade: 0.3,
        move :false,
        area: ['90%', '50%'],
        skin: 'layui-layer-rims',
        content: $(".addMenu"),
        closeBtn:1,
        shadeClose:false,
        btn:['确定','关闭'],
        yes:function () {
            var bootstrapValidator = $(".bootstrapValidators").data('bootstrapValidator');
            bootstrapValidator.validate();
            if(!bootstrapValidator.isValid()){
                return ;
            };
            var dataParams = {
                name:$("#vendorName").val(),
                vendorNo:$("#vendorno").val(),
                tel:$("#tel").val(),
            };
            if(dataParams.name == ''){
                layerAlert.warnMessage("请填写名称!");
                return;
            }
            $.ajax({
                type: "POST",
                url:projectPath+'/base/vendor/infos/add',
                async:false,
                dataType:"json",
                data: dataParams,
                success:function (data) {
                    if(data.code == "0"){
                        layerAlert.successMessage("新建成功","");
                    }else{
                        layerAlert.errorMessage("新建失败");
                    }
                },
                error:function(){
                    layerAlert.errorMessage("数据错误");
                }
            });
            $("#vendorName").val("");
            $("#vendorno").val("");
            $("#tel").val("");
            formValidator();
            $(".bootstrapValidators").data('bootstrapValidator').destroy();
            $('.bootstrapValidators').data('bootstrapValidator', null);
        },
        btn2:function(){
            $("#vendorName").val("");
            $("#vendorno").val("");
            $("#tel").val("");
            formValidator();
            $(".bootstrapValidators").data('bootstrapValidator').destroy();
            $('.bootstrapValidators').data('bootstrapValidator', null);
        },
        cancel:function(){
            $("#vendorName").val("");
            $("#vendorno").val("");
            $("#tel").val("");
            formValidator();
            $(".bootstrapValidators").data('bootstrapValidator').destroy();
            $('.bootstrapValidators').data('bootstrapValidator', null);
        }
    });
});

// 修改
$("#brnRevise").click(function(){
    formValidator();
    var ids = getSelectedDeleteParams();
    $("#equipmentDetail").hide();
    vender_detail_huixan(ids);
    if (ids != '' && ids != null) {
        layer.open({
            type: 1,
            title: "修改厂商",
            shadeClose: true,
            shade: 0.3,
            move :false,
            area: ['90%', '50%'],
            skin: 'layui-layer-rims',
            content: $(".addMenu"),
            closeBtn:1,
            shadeClose:false,
            btn:['确定','关闭'],
            yes:function () {
                var bootstrapValidator = $(".bootstrapValidators").data('bootstrapValidator');
                bootstrapValidator.validate();
                if(!bootstrapValidator.isValid()){
                    return ;
                };
                var dataParams = {
                    name:$("#vendorName").val(),
                    vendorNo:$("#vendorno").val(),
                    tel:$("#tel").val(),
                    uuid:ids,
                };
                if(dataParams.name == ''){
                    layerAlert.warnMessage("请填写名称!");
                    return;
                }
                $.ajax({
                    type: "POST",
                    url:projectPath+'/base/vendor/infos/update',
                    async:false,
                    dataType:"json",
                    data: dataParams,
                    success:function (data) {
                        if(data.code == "0"){
                            layerAlert.successMessage("修改成功","");
                        }else{
                            layerAlert.errorMessage("修改失败");
                        };
                    },
                    error:function () {
                        layerAlert.errorMessage("数据错误");
                    }
                });
                $(".addMenu select,input").val("");
                formValidator();
                $(".bootstrapValidators").data('bootstrapValidator').destroy();
                $('.bootstrapValidators').data('bootstrapValidator', null);
            },
            btn2:function(){
                $(".addMenu select,input").val("");
                formValidator();
                $(".bootstrapValidators").data('bootstrapValidator').destroy();
                $('.bootstrapValidators').data('bootstrapValidator', null);
            },
            cancel:function () {
                $(".addMenu select,input").val("");
                formValidator();
                $(".bootstrapValidators").data('bootstrapValidator').destroy();
                $('.bootstrapValidators').data('bootstrapValidator', null);
            }
        });
    } else {
        layerAlert.errorMessage("您的选择为空");
    }
});

// 详情展示
function vender_detail(id) {
    $(".addMenu select,input").prop("disabled",true);
    $("#equipmentDetail").show();
    $("#uuid").val(id);
    layer.open({
        type: 1,
        title: "厂商详情",
        shadeClose: true,
        shade: 0.3,
        move :false,
        area: ['90%', '50%'],
        skin: 'layui-layer-rims',
        content: $(".addMenu"),
        closeBtn:1,
        shadeClose:false,
        btn:['确定'],
        success:function(){
            vender_detail_huixan(id);
        },
        btn1:function () {
            $(".addMenu select,input").prop("disabled",false);
            $(".addMenu select,input").val("");
        },
        cancel:function(){
            $(".addMenu select,input").prop("disabled",false);
            $(".addMenu select,input").val("");
        }

    });
};

$("#qeuipClick").on("click",function(){
    $('#eqTabDetail').bootstrapTable('refresh', {url:projectPath + "/base/equipment/infos/qryEquipmentInfoByvendorUuid?vendorUuid=" + $("#uuid").val()});
    var index = layer.open({
        type: 1,
        title: "设备型号查看",
        shadeClose: true,
        shade: 0.3,
        move: false,
        area: ['90%', '90%'],
        skin: 'layui-layer-rims',
        content: $(".eqTabDetail"),
        closeBtn: 1,
        shadeClose: false,
        btn: ['确定'],
        success: function () {
        }
    });
});


function vender_detail_huixan(id) {
    $.ajax({
        type: "POST",
        url:projectPath+'/base/vendor/infos/detail?uuid='+id,
        async:false,
        dataType:"json",
        success:function (result) {
            data = result.data;
            $("#vendorName").val(data.name);
            $("#vendorno").val(data.vendorno);
            $("#tel").val(data.tel);
        },
        error:function(){
            alert("error");
        }
    });
};

/*时间操作开始*/
//创建开始时间
$('#createStartDate').datetimepicker({
    language:  'zh-CN',
    format: 'yyyy-mm-dd',
    weekStart: 1,
    autoclose: 1,
    todayBtn: 1,
    initialDate:new Date(),
    startView: 2,
    minView: 2,
    forceParse: 0,
    pickerPosition:'bottom-right',
}).on("changeDate",function(e){
    if(e.date != null&&e.date != ''){
        var createStartDate = Dateinit.getNextDay(e.date); //2018-03-10 14:47
    }
    //前一天与后一天时间的比较清空
    var start2 = new Date(Date.parse($('#createStartDate').val().replace(/-/g,"/"))); // 中国标准时间
    if(Date.parse(createStartDate.replace(/-/g,"/"))> start2){
        $("#createEndDate").val('');
    }
    //设置结束时间的起始值未开始时间的下一天
    $("#createEndDate").datetimepicker("setStartDate",createStartDate);
});
//创建结束时间
$('#createEndDate').datetimepicker({
    language:  'zh-CN',
    format: 'yyyy-mm-dd',
    weekStart: 1,
    autoclose: 1,
    todayBtn: 1,
    startView: 2,
    minView: 2,
    forceParse: 0,
    pickerPosition:'bottom-right',
});
//修改开始时间
$('#updateStartDate').datetimepicker({
    language:  'zh-CN',
    format: 'yyyy-mm-dd',
    weekStart: 1,
    autoclose: 1,
    todayBtn: 1,
    initialDate:new Date(),
    startView: 2,
    minView: 2,
    forceParse: 0,
    pickerPosition:'bottom-right',
}).on("changeDate",function(e){
    if(e.date != null&&e.date != ''){
        var updateStartDate = Dateinit.getNextDay(e.date); //2018-03-10 14:47
    }
    //前一天与后一天时间的比较清空
    var start2 = new Date(Date.parse($('#updateStartDate').val().replace(/-/g,"/"))); // 中国标准时间
    if(Date.parse(updateStartDate.replace(/-/g,"/"))> start2){
        $("#updateEndDate").val('');
    }
    //设置结束时间的起始值未开始时间的下一天
    $("#updateEndDate").datetimepicker("setStartDate",updateStartDate);
});
//修改结束时间
$('#updateEndDate').datetimepicker({
    language:  'zh-CN',
    format: 'yyyy-mm-dd',
    weekStart: 1,
    autoclose: 1,
    todayBtn: 1,
    startView: 2,
    minView: 2,
    forceParse: 0,
    pickerPosition:'bottom-right',
});
/*时间操作结束*/


// 新增修改提交验证
function formValidator(){
    $(".bootstrapValidators").bootstrapValidator({
        message: 'This value is not valid',
        feedbackIcons: {
            //valid: 'glyphicon glyphicon-ok',
            //invalid: 'glyphicon glyphicon-remove',
            //validating: 'glyphicon glyphicon-refresh'
        },
        fields:{
            vendorName:{
                validators:{
                    notEmpty: {
                        message: '请填写厂商名称'
                    },
                },
            },
            vendorno:{
                validators:{
                    notEmpty: {
                        message: '请填写厂家编号'
                    },
                },
            },
            tel:{
                validators:{
                    notEmpty: {
                        message: '请填写联系电话'
                    },
                    stringlength:{
                        min:11,
                        max:11,
                        message:'请输入11位手机号码'
                    },
                    regexp: {
                        regexp: "^1[0-9]{10}$",
                        message: '手机号码格式错误'
                    }
                },
            },
        }
    });
};

/**
 * zhangYiHang 18.3.20
 * 页面按钮控制
 * @constructor
 */
function buttenControl() {
    var urls = paramUrlByButten();
    if(urls.length>0){
        for (var i in urls){
            if('update' == urls[i]){
                $("#brnRevise").show();
            } else if('insert' == urls[i]){
                $("#btnAdd").show();
            }else if('delete' == urls[i]){
                $("#btnDelete").show()
            }
        }
    }
}